Merged
Conversation
anthonyshew
approved these changes
Feb 23, 2026
github-actions bot
added a commit
that referenced
this pull request
Feb 23, 2026
## Release v2.8.11-canary.23 Versioned docs: https://v2-8-11-canary-23.turborepo.dev ### Changes - release(turborepo): 2.8.11-canary.22 (#11963) (`ac0f273`) - chore: Migrate to Ultracite (#11948) (`a0db6bf`) - perf: Add more tracing spans into startup path (#11965) (`23e144d`) --------- Co-authored-by: Turbobot <turbobot@vercel.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Okay @anthonyshew here's the skinny:
What is this?
A linter preset that enforces consistent code style and catches common mistakes automatically.
Why are more rules turned off in the config?
Because the Ultracite preset we're extending turns on so many rules by default, it would cause issues. Think of it like this - originally you had like 5 rules enabled. Ultracite enables like 800. So we turn off a couple to make it play nice with Turborepo.
Why did it change so many files?
Because I ran the linter with the new preset. I modified Ultracite to reduce the potential changes from 19000+ to a couple of hundred. The changes are mechanical — no logic changed.
Will it reduce bugs?
Yes, in the sense it enables rules like react/exhaustive-deps that catch runtime bugs.
Will it make the code faster?
Surprisingly, yes which I know you'll enjoy (albeit marginally). For example, I swapped your
forEaches tofor...ofloops which are slightly faster since there's no callback overhead.Will this have any impact on my day to day life?
You may get more recommendations from Oxlint telling you to do things a certain way, or they may just fix themselves once you hit save. If they don't, tell old mate Claude to fix.
Is there more to come?
If you want. This is a very custom version of Ultracite with many rules disabled to make it easily adoptable by Turborepo. If you want to adopt more later, it's as easy as disabling the rule overrides in
.oxlint.jsonand letting Ultracite do it's work (or more likely, asking me to do it).